package com.winit.openapi.isp.vo;

import java.util.Date;
import java.util.List;

import org.hibernate.validator.constraints.Email;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;

/**
 * 更新发货通知单实体
 * 
 * @author jiaohua.wu
 */
public class UpdateDispatchNoticeOrder {

    // 代发转寄单号
    private List<String> orderNo;

    /**
     * 字段：发货通知单号 类型：String 长度：32
     */
    @NotBlank(message = "{02010250001}")
    @Length(min = 1, max = 32, message = "{02010250002}")
    private String       dispatchNoticeOrderNo;

    /**
     * 字段：发货方式 类型：String 长度：32
     */
    @Length(min = 1, max = 32, message = "{02010250002}")
    private String       shippingType;

    /**
     * 字段：快递公司 类型：String 长度：32
     */
    @Length(min = 1, max = 32, message = "{02010250002}")
    private String       express;

    /**
     * 字段：快递单号 类型：String 长度：32
     */
    @Length(min = 1, max = 32, message = "{02010250002}")
    private String       trackingNo;

    // 提货起始时间
    private Date         dateExpectFrom;

    // 提货截止时间
    private Date         dateExpectTo;

    /**
     * 字段：电子邮箱 类型：String 长度：32
     */
    @Length(min = 0, max = 60, message = "{02010250002}")
    @Email(message = "{02010250003}")
    private String       email;

    /**
     * 字段：联系人 类型：String 长度：32
     */
    @Length(min = 0, max = 32, message = "{02010250002}")
    private String       contact;

    /**
     * 字段：联系人电话 类型：String 长度：32
     */
    @Length(min = 1, max = 32, message = "{02010250002}")
    private String       phoneNo;

    /**
     * 字段：邮编 类型：String 长度：32
     */
    @Length(min = 1, max = 32, message = "{02010250002}")
    private String       zipCode;

    /**
     * 字段：国家ID 类型：Integer 长度：11
     */
//    @Digits(integer = 11, fraction = 0, message = "{02010250003}")
    private Integer      countryID;

    private String       countryName;

    /**
     * 字段：省ID 类型：Integer 长度：11
     */
//    @Digits(integer = 11, fraction = 0, message = "{02010250003}")
    private Integer      provinceID;

    private String       provinceName;

    /**
     * 字段：城市ID 类型：Integer 长度：11
     */
//    @Digits(integer = 11, fraction = 0, message = "{02010250003}")
    private Integer      cityID;

    private String       cityName;

    /**
     * 字段：提货地址 是否必填：Y 类型：String 长度：128
     */
    @Length(min = 1, max = 128, message = "{02010250002}")
    private String       pickupAddress;

    /**
     * 字段：提货地址id 是否必填：Y 类型：Integer 长度：
     */
//    @Digits(integer = 11, fraction = 0, message = "{02010250003}")
    private Integer      pickupAddressID;

    public List<String> getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(List<String> orderNo) {
        this.orderNo = orderNo;
    }

    public String getDispatchNoticeOrderNo() {
        return dispatchNoticeOrderNo;
    }

    public void setDispatchNoticeOrderNo(String dispatchNoticeOrderNo) {
        this.dispatchNoticeOrderNo = dispatchNoticeOrderNo;
    }

    public String getShippingType() {
        return shippingType;
    }

    public void setShippingType(String shippingType) {
        this.shippingType = shippingType;
    }

    public String getExpress() {
        return express;
    }

    public void setExpress(String express) {
        this.express = express;
    }

    public String getTrackingNo() {
        return trackingNo;
    }

    public void setTrackingNo(String trackingNo) {
        this.trackingNo = trackingNo;
    }

    public Date getDateExpectFrom() {
        return dateExpectFrom;
    }

    public void setDateExpectFrom(Date dateExpectFrom) {
        this.dateExpectFrom = dateExpectFrom;
    }

    public Date getDateExpectTo() {
        return dateExpectTo;
    }

    public void setDateExpectTo(Date dateExpectTo) {
        this.dateExpectTo = dateExpectTo;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getContact() {
        return contact;
    }

    public void setContact(String contact) {
        this.contact = contact;
    }

    public String getPhoneNo() {
        return phoneNo;
    }

    public void setPhoneNo(String phoneNo) {
        this.phoneNo = phoneNo;
    }

    public String getZipCode() {
        return zipCode;
    }

    public void setZipCode(String zipCode) {
        this.zipCode = zipCode;
    }

    public Integer getCountryID() {
        return countryID;
    }

    public void setCountryID(Integer countryID) {
        this.countryID = countryID;
    }

    public String getCountryName() {
        return countryName;
    }

    public void setCountryName(String countryName) {
        this.countryName = countryName;
    }

    public Integer getProvinceID() {
        return provinceID;
    }

    public void setProvinceID(Integer provinceID) {
        this.provinceID = provinceID;
    }

    public String getProvinceName() {
        return provinceName;
    }

    public void setProvinceName(String provinceName) {
        this.provinceName = provinceName;
    }

    public Integer getCityID() {
        return cityID;
    }

    public void setCityID(Integer cityID) {
        this.cityID = cityID;
    }

    public String getCityName() {
        return cityName;
    }

    public void setCityName(String cityName) {
        this.cityName = cityName;
    }

    public String getPickupAddress() {
        return pickupAddress;
    }

    public void setPickupAddress(String pickupAddress) {
        this.pickupAddress = pickupAddress;
    }

    public Integer getPickupAddressID() {
        return pickupAddressID;
    }

    public void setPickupAddressID(Integer pickupAddressID) {
        this.pickupAddressID = pickupAddressID;
    }

}
